package util;

/**
 * @author HuangJH
 * @create 2023-11-30-11:01
 */
public class CommonUtil {
    /**
     * 将2023.03.06.23.12.00这种格式变成2023年03月06日23时12分00秒
     * @param dateStr
     * @return
     */
    public static String formatDate(String dateStr){
        String[] dateArr = dateStr.split("\\.");
        return dateArr[0] + "年" + dateArr[1] +"月" + dateArr[2] + "日" + dateArr[3] + "时" + dateArr[4] + "分" + dateArr[5] + "秒";
    }

    /**
     * 检测时间合法性
     * @param year
     * @param month
     * @param day
     * @param hour
     * @param minute
     * @param second
     * @return
     */
    public static boolean checkDate(int year, int month, int day, int hour, int minute, int second) {
        if(month > 12 || month < 0 || day < 0 || day > 31 || hour < 0 || hour > 24 || minute < 0 || minute > 59 || second < 0 || second > 59){
            return false;
        }
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0){
            // 闰年
            if(month == 2 && day > 29) {
                return false;
            }
        } else {
            // 非闰年
            if(month == 2 && day > 29) {
                return false;
            }
        }
        if(month == 4 || month == 6 || month == 9 || month == 11) {
            if(day > 30) {
                return false;
            }
        }
        return true;
    }
}
